﻿<?php
class ExtjsController extends AppController{
	var $name = 'Extjs';

	/*Ce controleur va permettre de gérer tous les aspects de sécurité de l'interface Extjs
	Il va nous permettre d'intégrer ou non les composants graphiques en fonction des droits
	des utilisateurs.
	La principale difficulté consiste à respecter l'architecture MVC d'Extjs 4.
	Noud aurons donc, dans ce controleur :
	 - L'interface générale de l'application
	 - la génération de fichiers javascripts suivant les droits
	 - la génération des différents stores pour pouvoir intégrer les url des appels Ajax
	   indépendants de la plate-forme d'éxécution	
	*/

	// var $uses = null; works too
	var $uses = array();
	var $helpers = array('Html','Javascript');

	function index(){
                $this->set("title_for_layout","NMCollector");

		$this->layout = null;
	}
		
	// Les actions concernant les droits
	
	
	function panelPrincipal(){
            // Récupération des permission pour l'affichage conditionnel des options
		// 1ère partie du mécanisme masquant côté serveur les droits utilisateurs
		$permissions = array();
		$permissions['administration'] = $this->Acl->check(array('model' => 'Group', 'foreign_key' => $this->Session->read('Auth.User.group_id')),'extjs/Administration');
                $permissions['referentiel'] = $this->Acl->check(array('model' => 'Group', 'foreign_key' => $this->Session->read('Auth.User.group_id')),'extjs/Referentiel');
		$permissions['collections'] = $this->Acl->check(array('model' => 'Group', 'foreign_key' => $this->Session->read('Auth.User.group_id')),'extjs/Collections');
		
		$this->set("permissions",$permissions);

		$this->set('user', $this->Session->read('Auth.User.prenom').' '.$this->Session->read('Auth.User.nom'));
                
                $this->layout = 'js/gen';
		$this->ext = '.js';
            
        }
        
        function app(){
            // Récupération des permission pour l'affichage conditionnel des options
		// 1ère partie du mécanisme masquant côté serveur les droits utilisateurs
		$permissions = array();
		$permissions['administration'] = $this->Acl->check(array('model' => 'Group', 'foreign_key' => $this->Session->read('Auth.User.group_id')),'extjs/Administration');
                $permissions['referentiel'] = $this->Acl->check(array('model' => 'Group', 'foreign_key' => $this->Session->read('Auth.User.group_id')),'extjs/Referentiel');
		$permissions['collections'] = $this->Acl->check(array('model' => 'Group', 'foreign_key' => $this->Session->read('Auth.User.group_id')),'extjs/Collections');
		
		$this->set("permissions",$permissions);

		$this->layout = 'js/gen';
		$this->ext = '.js';
            
        }
}

?>